// 图片懒加载
import defaultImg from '@/assets/images/200.png'
export const lazyload = {
  mounted(el, options) {
    // isIntersecting 解构出来 dom 元素距离可视区的距离
    const io = new IntersectionObserver( ([{ isIntersecting }]) => {
      if(isIntersecting){
        // 停止监听
        io.unobserve(el)
        // img 图片 加载失败的回调
        el.onerror = () => {
          el.src = defaultImg
        }
        el.src = options.value
      }
    },
    {
      // 距离多少开启回调函数
      threshold: 0.01
    })
    // 开启监听
    io.observe(el)
  }
}